Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plane: update throttle mix uses filtered accelerations #13723

Merged
merged 1 commit into from
May 11, 2020

Conversation

rmackay9
Copy link
Contributor

@rmackay9 rmackay9 commented Mar 4, 2020

This is the QuadPlane equivalent of this multicopter PR:#13639 which aims to improve landing detection by placing a 1hz filter on the accelerations used in the update_throttle_mix function. The update_throttle_mix feature's output is one of the inputs to the landing detector (see QuadPlane::should_relax()'s call to attitude_control->is_throttle_mix_min()).

@lthall is really the expert in this area but the purpose of the "throttle_mix" feature is to decide on the priority of attitude control vs altitude control. A example of when these two controllers conflict with each other is during a fast descent (or more accurately a fast vertical deceleration). The altitude controllers will want to pull the overall throttle low to descend while the attitude controllers will want to raise the overall throttle in order to give the rate controllers more "room" (i.e. a larger difference in PWM between opposite motors).

One of the inputs to the throttle_mix feature is the vehicle's acceleration. Master currently uses the instantaneous accelerations while this PR adds a 1hz filter instead (consistent with Copter).

This has been lightly tested in SITL with multiple landings using various accelerations (I set SIM_ACC_RND to 0, 3, 5, 10, 15, 20 and even really large values). Sadly this testing didn't expose any existing issues with QuadPlane's landing detection meaning I couldn't see any improvement by applying this PR.

In multicopter's this is the kind of accelerations we can see on large vehicles during touch down. This is the situation where we think this type of filtering should help (actual flight testing should happen in the coming few days).
image

This PR closes this issue: #13664

@rmackay9
Copy link
Contributor Author

rmackay9 commented May 5, 2020

As discussed on the dev call I'll change this to be a 1D filter instead of 3D.

@tridge
Copy link
Contributor

tridge commented May 5, 2020

1D filter would make more sense

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants